@charset "utf-8";
/* CSS Document */

/*  Structure
--------------------------------------------------------------------------------------*/
	html,
	body {
	   height:100%;
	   overflow: hidden;
	}
	#general-content {
		height:100%;
		overflow: auto;
		_text-align: center;
	}
	#outer-wrapper {
		background:transparent url(../data/background_640.gif) repeat-y center 50%;
	}
	#inner-wrapper, #footer {
		width: 619px;
		margin: 0 auto;	
		_text-align:left;		
	}
	#wrapper {
		overflow: auto; /* 含包ブロック高さ確保 */
		margin: 5px 0 0;
	}
	#main {
		width: 470px;
		float: right;
		word-wrap: break-word; /* fix for long text breaking sidebar float in IE */
		overflow: hidden;      /* fix for long non-text content breaking IE sidebar float */
	}
	#main p {
		text-align:justify;
		text-justify:inter-ideograph;
	}
	#main img { max-width:470px;}
	
/*  Footer & Footer Fix
--------------------------------------------------------------------------------------*/
/* http://www.themaninblue.com/writing/perspective/2005/08/29/ */
	#outer-wrapper {
		min-height: 100%;
		_height: 100%;
	}
	#inner-wrapper {
		height: 100%; /* Opera11 dont work when min-height:100% */
		padding-bottom: 35px;/* フッターの高さと同じ値にする */	
	}
	
	#footer-content {
		height: 30px;/* フッターの高さを指定 */
		margin: -30px 0 0;/* フッターの高さと同じ値にする */
		position: relative;
		width: 100%;
	}

	#footer {
		background: #D4C78C;
		height: 30px;
		line-height: 30px;
		text-align: center;
	}

/*  Header
--------------------------------------------------------------------------------------*/
	#header {
		height: 105px;
		position: relative;
	}
	h1 {
		display:none;
	}
	#navi {
		position: absolute;
		top: 80px;
		left: 0;
		width: 100%;
		text-align: center;
		height: 20px;
		background-color: rgba( 255, 255, 255, 0.8);
		_background-color: #fff;
		color: #999;
		line-height: 12px;
		font-size: 12px;
	}
	#navi .group { padding: 0 5px 0;}
	#navi a,
	#navi .separator {
		display: inline-block;
		padding-top: 4px;
		padding-bottom: 3px;
	}
	#navi a {
		padding-left: 9px;
		padding-right: 9px;
		color: #333;
	}
	#navi .separator {
		padding-left: 0;
		padding-right: 0;
	}
	#navi a {}
	#navi .group a { padding: 4px 5px 3px;}
	
	#navi a:hover { background-color: #999;}
	#navi img { vertical-align:text-top;}
	#navi .open { background-color:#D4C78C;}

/*  breadcrumb
--------------------------------------------------------------------------------------*/
	#breadcrumb { text-align:right; padding: 3px 5px;}
	#breadcrumb * { display:inline !important;}
	#breadcrumb, #breadcrumb * {
		font-size: 11px;
		line-height: 11px;
		color: #666;
		border:none;
		font-weight:normal;		
	}
	#breadcrumb a:hover { text-decoration: underline;}

/*  Side
--------------------------------------------------------------------------------------*/
	#side {
		width: 140px;
		float: left;
		word-wrap: break-word; /* fix for long text breaking sidebar float in IE */
		overflow: hidden;      /* fix for long non-text content breaking IE sidebar float */
	}
	#side iframe { margin-left:8px;}
	#side dl,
	#sidebar .widget {
		padding:0 0 4px 0;
		margin-bottom:15px;
	}
	#sidebar { margin-top:-5px;}
	#sidebar dl { padding:0; margin:0; border:none;} /* 2重になるsideの暫定対処 */
	#sidebar ul, #sidebar ol {
		list-style:none;
		padding: 0;
	}
		
	#side dt,
	#sidebar h2 {
	    border-bottom: 1px dotted #333;
	    border-top: 1px solid #333;
		font-size: 12px;
		font-weight:bold;
		background: #eee;
		color: #333;
		padding: 4px 0 2px;
		margin-top:5px;
		text-align: center;
	}

	#side dd,
	.posts li,
	#sidebar li {
		margin:0 0 0 1px;
		color:#030d31;
		border-bottom: 1px dashed #ccc;
		font-size:12px;
		line-height:16px;
	}
	
	#side dd a,
	.posts li a,
	#sidebar li a {
		font-size:12px;line-height:16px;
		padding:4px 2px 0 5px;
		display: block;
	}
	
	#side dd a:hover,
	.posts li a:hover,
	#sidebar li a:hover {
		background-color: #ccc;
	}
	
    #side dd.open {
		background: #333;
		border-bottom: 1px #333 solid !important;
	}
	#side dd.open a { color: #ccc;}
	#side dd.open a:hover { background: #666;}
	
	
	#sidebar li a { display: inline;}
	
	.toggle-open { _font-size: 8px;}
	

/*  Tab Navi
--------------------------------------------------------------------------------------*/
	#tab-menu,
	#tab-menu-bottom {
		height: 19px;
	    padding: 0;
	    text-align: center;
	}
	#tab-menu {
		margin:5px 0 20px !important;
		border-bottom:1px solid #B3B3B3;
	}
	#tab-menu-bottom {
		margin:20px 0 5px !important;
		border-top:1px solid #B3B3B3;
	}	
	#tab-menu li,
	#tab-menu-bottom li {
		height: 18px;
		line-height: 18px;
		font-size:12px;
		border: 1px solid #B3B3B3;
		background: #e6e6e6;
		display: inline-block;
		_display:inline;
		_margin: 0 2px;
	    position: relative;
	}
	* html #tab-menu li { top: 1px;}
	#tab-menu-bottom li { top: -1px;}
	
	#tab-menu li a,
	#tab-menu-bottom li a {
		padding: 0 14px;
		display: block;
	}
	
	/* open */
	ul#tab-menu li.open, 
	ul#tab-menu-bottom li.open {
		background: #fff;
		line-height: 19px;
		height: 19px;
		z-index: 9;
	}
	ul#tab-menu li.open {
		top: 0;
		border-bottom:none;
	}
	ul#tab-menu-bottom li.open {
		border-top:none;
		top: -1px;
		_top: -1px;
	}